#import <UIKit/UIKit.h>
#import "MWFeedParser.h"
#import "HJObjManager.h"
#import "ImageUIButton.h"
#import "MediaBookXMLParser.h"
#import "UIImageLayer.h"
#import "DolphinUIWebLayer.h"
#import "UIImageLayer.h"
#import "LettersPanelComponent.h"

@class ImageUIButton;
@class UIImageLayer;
@class DolphinUIWebLayer;
@class UIImageLayer;
@class LettersPanelComponent;

@interface XMLTable : UIView <UITableViewDelegate, UITableViewDataSource, UIActionSheetDelegate,MWFeedParserDelegate>
{	
	// Parsing
	MWFeedParser *feedParser;
	NSMutableArray *parsedItems;
	
	// Displaying
	NSDateFormatter *formatter;
    
    // image manager
    HJObjManager* objMan;
    
    UIActivityIndicatorView *activityIndicator;
        
    UITableView *theTable;
    UIImageLayer *featureImgView;
    UIView *featureImgHolder;
    UILabel *titleLabel;
    UIView *titleBg;
    
    MediaBookXMLParser *mediaBookXML;
    NSString *xmlPath;
    
    NSIndexPath *recent_sel_item_index;
        
    double currentTime; 
    
    BOOL useFeaturedImg;

    NSString *identifier;
    NSString *suffix;
    NSString *book_load_over_msg;
    
    NSString *feedAndUnit;
    NSString *atomUnit ;
    NSString *feedUnit;
    
    NSString *featureImgMsg;
    
    int table_width;
    int table_height;
    int table_row_height;
    int table_unit_style;
    
    BOOL useSpecificUI;
    UIView *specificUI;
    
    BOOL useCharacterPanel;
    LettersPanelComponent *lettersPanelComponent;
    
    NSString *loadImgOverMsg;
}

@property (nonatomic, copy) NSString *identifier;
@property (nonatomic, copy) NSString *suffix;
@property (nonatomic, copy) NSString *xmlPath;
@property BOOL useCharacterPanel;

-(void) triggerByURL:(NSString*) inURL
         useFeatureImg:(BOOL) ifUseFeatureImg;

-(void) setAtomData:(NSString *) feedAndUnit
               atom:(NSString *) inAtomUnit
               feed:(NSString  *) feedUnit;

-(void) configTable:(int) inTableWidth
            tableHeight:(int) inTableHeight
             tableWidth:(int) inTableRowHeight
        tableUnitStyle:(int) inTableUnitStyle;

-(void) setUpSpecificUI:(UIView *)inView;

-(void) refresh;
-(void) mouseDownProc:(id)sender;

-(void) notificationSelector:(NSNotification *) notification;
-(void) releaseSelectedNode;
-(void) configMsg;
@end
